package com.denlaku.longan.repository;

import com.denlaku.longan.anno.VarOp;
import com.denlaku.longan.dao.MyCollectDao;
import com.denlaku.longan.qo.MyCollectQuery;
import com.denlaku.longan.vo.MyCollect;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author tianx
 */
@Repository
public class MyCollectRepository {
    @Autowired
    private MyCollectDao myCollectDao;

    /**
     * 添加我的收藏
     *
     * @param myCollect 我的收藏
     */
    @VarOp
    public void add(MyCollect myCollect) {
        myCollectDao.add(myCollect);
    }

    /**
     * 根据ID删除我的收藏
     *
     * @param query 查询参数
     */
    public void delete(MyCollectQuery query) {
        myCollectDao.delete(query);
    }

    /**
     * 根据uid删除我的收藏
     * @param uid 用户id
     */
    public void deleteByUid(Long uid) {
        myCollectDao.deleteByUid(uid);
    }

    /**
     * 查询我的收藏
     * @param query 查询参数
     * @return 我的收藏
     */
    public List<MyCollect> list(MyCollectQuery query) {
        return myCollectDao.list(query);
    }

    /**
     * 判断是否收藏
     *
     * @param query 查询参数
     * @return 是否收藏
     */
    public boolean collected(MyCollectQuery query) {
        Boolean collected = myCollectDao.collected(query);
        return Boolean.TRUE.equals(collected);
    }
}
